/**
 * 描述: 添加首页banner
 * 版权: Copyright (c) 2019
 * 公司: 深圳市网商天下科技开发有限公司
 * 作者: 许堉颖
 * 版本: 1.0.0
 * 创建时间: 2019/5/7 10:21
 */

const utils = require('../../utils.js');
// 创建返回结果
const resultConstructor = utils.resultConstructor;

/**
 * 添加banner
 * @param promise 参数
 */
module.exports = async function addBanner(params) {
  // 获取数据库链接
  const db = utils.getDatabase();
  // 数据库操作
  const database = db.collection('rc_homepage_banner');

  // 获取启用状态的轮播图
  let enableBannerList = await database.where({ status: 1 }).get().then(res => {
    return res.data;
  });
  console.log(enableBannerList);
  if (enableBannerList.length < 5) {
    params['status'] = 1;
  }

  // 校验参数
  const checkParamsResult = checkParams(params);
  // 校验结果失败返回错误信息
  if (!checkParamsResult.status) {
    return checkParamsResult.data;
  }
  checkParamsResult['data']['createTime'] = db.serverDate();
  checkParamsResult['data']['updateTime'] = db.serverDate();
  //执行数据库添加
  let resultPromise = database.add({data: checkParamsResult.data});
  // 生成返回值
  return resultConstructor(resultPromise);
}

/**
 * 检查参数
 * @param params 参数
 */
function checkParams(params) {
  // 获取请求参数类
  const request = new utils.RequestParams();
  // 标题
  request.put('title', params['title']).checkEmpty('标题');
  // 图片
  request.put('icon', params['icon']).checkEmpty('图片');
  // 图片地址
  request.put('iconUrl', params['iconUrl']).checkEmpty('图片地址');
  // 图片尺寸
  request.put('imageSize', params['imageSize']);
  // 页面名称
  request.put('pageName', params['pageName']).checkEmpty('页面名称');
  // 页面路径
  request.put('url', params['url']);
  // 状态
  request.put('status', params['status'], 0);

  return request.checkParamsResult(request);
}